package com.hooya.fa.eu.api.bo.report;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * @Description 1
 * @Author : Zongz
 * @Copyright Copyright (c) 豪雅集团
 * @Create 2024/1/3
 * @Version 1.0.0
 */
@Data
public class CostwayStkInfoBo {

    @Schema(description = "产地")
    @ExcelProperty(value = "wh_id", index = 1)
    private String whId;

    @Schema(description = "产地名称")
    @ExcelProperty(value = "wh_name", index = 2)
    private String whName;

    @Schema(description = "产品编号")
    @ExcelProperty(value = "SKU", index = 3)
    private String sku;

    @Schema(description = "进出时间")
    @ExcelProperty(value = "in-out date", index = 6)
    private String inoutDate;

    @Schema(description = "数量")
    @ExcelIgnore
    private Integer qty;

    @ExcelProperty(value = "Inventory loss/income", index = 28)
    private Integer bsOrThQty;

    @ExcelProperty(value = "transfer between warehouses", index = 19)
    private Integer zyQty;

    @ExcelProperty(value = "B2C", index = 18)
    private Integer b2cQty;

    @ExcelProperty(value = "B2B", index = 17)
    private Integer b2bQty;

    @ExcelProperty(value = "inbound qty", index = 7)
    private Integer inboundQty;

    @ExcelProperty(value = "outbound qty", index = 12)
    private Integer outboundQty;

    @Schema(description = "发票编号")
    @ExcelProperty(value = "invoice number", index = 21)
    private String invoiceNo;

    @ExcelProperty(value = "bor_inv", index = 20)
    private String zyInvoiceNo;

    @Schema(description = "开票时间")
    @ExcelProperty(value = "invoice date", index = 22)
    private String invoiceDate;

    @Schema(description = "价格")
    @ExcelIgnore
    private Double price;

    @ExcelIgnore
    @Schema(description = "价格*费率【根据不同地区】")
    private Double unitPrice;

    @ExcelProperty(value = "unit price EUR", index = 23)
    private Double unitPriceEur;

    @ExcelProperty(value = "unit price PLN", index = 25)
    private Double unitPricePln;

    @ExcelProperty(value = "in_price NET EUR", index = 8)
    private Double eurPriceIn;

    @ExcelProperty(value = "in_price NET USD", index = 9)
    private Double usdPriceIn;

    @ExcelProperty(value = "in_price NET PLN", index = 10)
    private Double plnPriceIn;

    @ExcelProperty(value = "out_price NET EUR", index = 13)
    private Double eurPriceOut;

    @ExcelProperty(value = "out_price NET USD", index = 14)
    private Double usdPriceOut;

    @ExcelProperty(value = "out_price NET PLN", index = 15)
    private Double plnPriceOut;

    @Schema(description = "货币费率")
    @ExcelProperty(value = "currency rate", index = 24)
    private Double currencyRate;

    @Schema(description = "货币")
    @ExcelIgnore
    private String currency;

    @Schema(description = "卖家")
    @ExcelProperty(value = "seller", index = 26)
    private String seller;

    @Schema(description = "买家")
    @ExcelProperty(value = "buyer", index = 27)
    private String buyer;

    @Schema(description = "去向")
    @ExcelIgnore
    private String direction;

    @Schema(description = "类型")
    @ExcelIgnore
    private String type;

    @Schema(description = "货权")
//    @ExcelProperty(value = "belongs", index = 29)
    @ExcelIgnore
    private String belongs;

    @Schema(description = "结束时间")
    @ExcelProperty(value = "date", index = 0)
    private String date;

    @Schema(description = "总价")
    @ExcelIgnore
    private Double totalCost;

    @ExcelProperty(value = "in_cost NET", index = 11)
    private Double inCostNet;

    @ExcelProperty(value = "out_revenue NET", index = 16)
    private Double outCostNet;

    @Schema(description = "当月开始数量")
    @ExcelProperty(value = "stock begin of month", index = 4)
    private Integer beginQty;

    @Schema(description = "当月结束数量")
    @ExcelProperty(value = "stock end of month", index = 5)
    private Integer endQty;

}
